package J11_3;
//在 AtCoder 国家，有一个规定："当驾驶时间达到
//A 分钟或以上时，卡车司机必须休息至少
//B 分钟。"
//
//给定一个由 a 和 b 组成的长度为
//N 的字符串
//S ，以及正整数
//A 和
//B 。求满足以下所有条件的整数对
//(l,r) 的数量。
//A.
//从
//S 的第
//l 个字符到第
//r 个字符的子字符串中 a 的数量大于或等于
//A 。
//从
//S 的第
//l 个字符到第
//r 个字符的子字符串中 b 的数量小于
//B 。
import java.util.Scanner;

//前缀和
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int a = in.nextInt();
        int b = in.nextInt();
        String str = in.next();
        int aCount = 0;
        int bCount = 0;
        int[] prefixA = new int[n];
        int[] prefixB = new int[n];
        for (int j = 0; j < n; j++) {
            if (str.charAt(j) == 'a') {
                aCount++;
            } else {
                bCount++;
            }
            prefixB[j] = bCount;
            prefixA[j] = aCount;
        }
        int minR = 0;
        int maxR = 0;
        long result = 0;

        for(int l = 0; l < n; l++){
            int exA = (l == 0) ? 0 : prefixA[l-1];
            int exB = (l == 0) ? 0 : prefixB[l-1];
            if(minR < l) minR = l;
            if(maxR < l) maxR = l;

            // 找到从位置l开始，第一个满足'a'数量>=a的右端点minR
            // 即找到最小的minR使得prefixA[minR] - exA >= a
            while(minR < n && (prefixA[minR] - exA) < a) minR++;
            if(minR >= n) continue;

            // 找到从位置l开始，第一个不满足'b'数量<b的右端点maxR
            // 即找到最小的maxR使得prefixB[maxR] - exB >= b
            // 这样maxR-1就是最大的满足'b'数量<b的右端点
            while(maxR < n && (prefixB[maxR] - exB) < b) maxR++;

            // 计算满足两个条件的右端点数量：
            // 1. 右端点r需要满足[l,r]区间内'a'的数量>=a
            // 2. 右端点r需要满足[l,r]区间内'b'的数量<b
            // 满足条件的右端点范围是[minR, maxR-1]，数量为maxR-minR
            // int cntA = Sa[minR] - exA;
            // int cntB = Sb[maxR] - exB;
            // System.out.println("l:" + l + " minR:" + minR + " maxR:" + maxR + " cntA:" + cntA + " cntB:" + cntB);
            result+= Math.max((maxR - minR), 0);
        }

        System.out.println(result);
    }
}
